package com.suke.czx.modules.incentivegrant.mapper;

import com.suke.czx.modules.incentivegrant.entity.IncentiveGrant;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 应用模块名称: 绩效发放
 * 代码描述: 绩效发放持久层
 * copyright: AUZAR ALL RIGHTS RESERVED
 * company: AUZAR
 *
 * @author: 颜米晨
 * @date: 2022/08/12 17:28:46
 */
public interface IncentiveGrantMapper {

    /**
     * 查询项目信息
     * @param projectId 项目id
     * @return 项目信息
     */
    IncentiveGrant getInfo(@Param("projectId") Long projectId);

    /**
     * 查询绩效发放
     * @param projectId 项目id
     * @param job2 组别
     * @param performanceConfigId 绩效参数id
     * @return 绩效发放数据集
     */
    List<IncentiveGrant> getIncentiveGrant(@Param("projectId") Long projectId, @Param("job2") Integer job2,
                                           @Param("performanceConfigId") Long performanceConfigId);

    /**
     * 绩效发放
     * @param incentiveGrant 绩效发放实体
     */
    void insertIncentiveGrant(IncentiveGrant incentiveGrant);

    /**
     * 更新绩效发放
     * @param incentiveGrant 绩效发放实体
     */
    void updateIncentiveGrant(IncentiveGrant incentiveGrant);

    /**
     * 删除绩效发放
     * @param incentiveGrantId 绩效发放id
     * @param updater 更新人id
     */
    void updateDelIncentiveGrant(@Param("incentiveGrantId") Long incentiveGrantId, @Param("updater") Long updater);

}